Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use the helm --namespace convention #250

Merged
merged 2 commits into from
Jun 19, 2018

Conversation

cyriltovena
Copy link
Collaborator

The namespace is now created by helm and not our template. This is the convention helm recommend and the one istio uses so helm user won't be lost.

It's also more compatible for use cases when you already have the namespace created.

Tested on GKE !

Closes #212

@agones-bot
Copy link
Collaborator

Build Failed 😱

Build Id: 8fb85754-3150-418e-bc31-517f06e00156

Build Logs
starting build "8fb85754-3150-418e-bc31-517f06e00156"

FETCHSOURCE
Initialized empty Git repository in /workspace/.git/
From https://source.developers.google.com/p/agones-images/r/agones
 * branch            d9eca4f0921506d234c236a192cf1a7699d4b977 -> FETCH_HEAD
HEAD is now at d9eca4f use the helm --namespace convention and drop agones.namespace to follow helm standard.
BUILD
Starting Step #0
Step #0: Already have image (with digest): ubuntu
Finished Step #0
Starting Step #1
Step #1: Already have image (with digest): gcr.io/cloud-builders/docker
Step #1: Sending build context to Docker daemon  131.2MB

Step #1: Step 1/3 : FROM gcr.io/cloud-builders/docker
Step #1:  ---> 2adb1cfa9b75
Step #1: Step 2/3 : RUN apt-get install make
Step #1:  ---> Running in d5cffb21e9e0
Step #1: Reading package lists...
Step #1: Building dependency tree...
Step #1: Reading state information...
Step #1: Suggested packages:
Step #1:   make-doc
Step #1: The following NEW packages will be installed:
Step #1:   make
Step #1: 0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
Step #1: Need to get 151 kB of archives.
Step #1: After this operation, 365 kB of additional disk space will be used.
Step #1: Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 make amd64 4.1-6 [151 kB]
Step #1: Fetched 151 kB in 0s (238 kB/s)
Step #1: Selecting previously unselected package make.
Step #1: (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 11239 files and directories currently installed.)
Step #1: Preparing to unpack .../archives/make_4.1-6_amd64.deb ...
Step #1: Unpacking make (4.1-6) ...
Step #1: Setting up make (4.1-6) ...
Step #1: Removing intermediate container d5cffb21e9e0
Step #1:  ---> 7f838d2b808e
Step #1: Step 3/3 : ENTRYPOINT ["/usr/bin/make"]
Step #1:  ---> Running in de581d2a4d6d
Step #1: Removing intermediate container de581d2a4d6d
Step #1:  ---> 2b34e764239d
Step #1: Successfully built 2b34e764239d
Step #1: Successfully tagged make-docker:latest
Finished Step #1
Starting Step #2 - "pull-build-image"
Step #2 - "pull-build-image": Already have image: make-docker
Step #2 - "pull-build-image": docker pull gcr.io/agones-images/agones-build:fedaab1c9e && docker tag gcr.io/agones-images/agones-build:fedaab1c9e agones-build:fedaab1c9e
Step #2 - "pull-build-image": fedaab1c9e: Pulling from agones-images/agones-build
Step #2 - "pull-build-image": c73ab1c6897b: Pulling fs layer
Step #2 - "pull-build-image": 3091fac74ac3: Pulling fs layer
Step #2 - "pull-build-image": 32ec8f15f1df: Pulling fs layer
Step #2 - "pull-build-image": 05316ce21a25: Pulling fs layer
Step #2 - "pull-build-image": 2f0627691b79: Pulling fs layer
Step #2 - "pull-build-image": 316bb68da5df: Pulling fs layer
Step #2 - "pull-build-image": b732691c3989: Pulling fs layer
Step #2 - "pull-build-image": b39b15d9388e: Pulling fs layer
Step #2 - "pull-build-image": 468aee6ffa02: Pulling fs layer
Step #2 - "pull-build-image": 705bdc3637a7: Pulling fs layer
Step #2 - "pull-build-image": d743f6c65281: Pulling fs layer
Step #2 - "pull-build-image": 009752464ced: Pulling fs layer
Step #2 - "pull-build-image": 05316ce21a25: Waiting
Step #2 - "pull-build-image": d88f6e80263a: Pulling fs layer
Step #2 - "pull-build-image": 51ba8e2a1e14: Pulling fs layer
Step #2 - "pull-build-image": 7c5c59a90f21: Pulling fs layer
Step #2 - "pull-build-image": 7970d81f9703: Pulling fs layer
Step #2 - "pull-build-image": 00a4302f048d: Pulling fs layer
Step #2 - "pull-build-image": 2f0627691b79: Waiting
Step #2 - "pull-build-image": bc85b5b9fdab: Pulling fs layer
Step #2 - "pull-build-image": 316bb68da5df: Waiting
Step #2 - "pull-build-image": b39b15d9388e: Waiting
Step #2 - "pull-build-image": 468aee6ffa02: Waiting
Step #2 - "pull-build-image": 8df4e9268837: Pulling fs layer
Step #2 - "pull-build-image": fbf4eab1fe93: Pulling fs layer
Step #2 - "pull-build-image": b732691c3989: Waiting
Step #2 - "pull-build-image": 705bdc3637a7: Waiting
Step #2 - "pull-build-image": 51ba8e2a1e14: Waiting
Step #2 - "pull-build-image": 7c5c59a90f21: Waiting
Step #2 - "pull-build-image": 7970d81f9703: Waiting
Step #2 - "pull-build-image": d743f6c65281: Waiting
Step #2 - "pull-build-image": 00a4302f048d: Waiting
Step #2 - "pull-build-image": d88f6e80263a: Waiting
Step #2 - "pull-build-image": fbf4eab1fe93: Waiting
Step #2 - "pull-build-image": bc85b5b9fdab: Waiting
Step #2 - "pull-build-image": 009752464ced: Waiting
Step #2 - "pull-build-image": c73ab1c6897b: Download complete
Step #2 - "pull-build-image": 05316ce21a25: Verifying Checksum
Step #2 - "pull-build-image": 05316ce21a25: Download complete
Step #2 - "pull-build-image": 3091fac74ac3: Verifying Checksum
Step #2 - "pull-build-image": 3091fac74ac3: Download complete
Step #2 - "pull-build-image": 316bb68da5df: Verifying Checksum
Step #2 - "pull-build-image": 2f0627691b79: Verifying Checksum
Step #2 - "pull-build-image": 2f0627691b79: Download complete
Step #2 - "pull-build-image": b39b15d9388e: Verifying Checksum
Step #2 - "pull-build-image": b39b15d9388e: Download complete
Step #2 - "pull-build-image": 468aee6ffa02: Verifying Checksum
Step #2 - "pull-build-image": 468aee6ffa02: Download complete
Step #2 - "pull-build-image": 705bdc3637a7: Verifying Checksum
Step #2 - "pull-build-image": 705bdc3637a7: Download complete
Step #2 - "pull-build-image": b732691c3989: Verifying Checksum
Step #2 - "pull-build-image": b732691c3989: Download complete
Step #2 - "pull-build-image": d743f6c65281: Verifying Checksum
Step #2 - "pull-build-image": d743f6c65281: Download complete
Step #2 - "pull-build-image": d88f6e80263a: Verifying Checksum
Step #2 - "pull-build-image": d88f6e80263a: Download complete
Step #2 - "pull-build-image": c73ab1c6897b: Pull complete
Step #2 - "pull-build-image": 32ec8f15f1df: Verifying Checksum
Step #2 - "pull-build-image": 32ec8f15f1df: Download complete
Step #2 - "pull-build-image": 009752464ced: Verifying Checksum
Step #2 - "pull-build-image": 009752464ced: Download complete
Step #2 - "pull-build-image": 7970d81f9703: Verifying Checksum
Step #2 - "pull-build-image": 7970d81f9703: Download complete
Step #2 - "pull-build-image": 00a4302f048d: Download complete
Step #2 - "pull-build-image": bc85b5b9fdab: Verifying Checksum
Step #2 - "pull-build-image": bc85b5b9fdab: Download complete
Step #2 - "pull-build-image": 8df4e9268837: Verifying Checksum
Step #2 - "pull-build-image": 8df4e9268837: Download complete
Step #2 - "pull-build-image": fbf4eab1fe93: Verifying Checksum
Step #2 - "pull-build-image": fbf4eab1fe93: Download complete
Step #2 - "pull-build-image": 7c5c59a90f21: Verifying Checksum
Step #2 - "pull-build-image": 7c5c59a90f21: Download complete
Step #2 - "pull-build-image": 51ba8e2a1e14: Verifying Checksum
Step #2 - "pull-build-image": 51ba8e2a1e14: Download complete
Step #2 - "pull-build-image": 3091fac74ac3: Pull complete
Step #2 - "pull-build-image": 32ec8f15f1df: Pull complete
Step #2 - "pull-build-image": 05316ce21a25: Pull complete
Step #2 - "pull-build-image": 2f0627691b79: Pull complete
Step #2 - "pull-build-image": 316bb68da5df: Pull complete
Step #2 - "pull-build-image": b732691c3989: Pull complete
Step #2 - "pull-build-image": b39b15d9388e: Pull complete
Step #2 - "pull-build-image": 468aee6ffa02: Pull complete
Step #2 - "pull-build-image": 705bdc3637a7: Pull complete
Step #2 - "pull-build-image": d743f6c65281: Pull complete
Step #2 - "pull-build-image": 009752464ced: Pull complete
Step #2 - "pull-build-image": d88f6e80263a: Pull complete
Step #2 - "pull-build-image": 51ba8e2a1e14: Pull complete
Step #2 - "pull-build-image": 7c5c59a90f21: Pull complete
Step #2 - "pull-build-image": 7970d81f9703: Pull complete
Step #2 - "pull-build-image": 00a4302f048d: Pull complete
Step #2 - "pull-build-image": bc85b5b9fdab: Pull complete
Step #2 - "pull-build-image": 8df4e9268837: Pull complete
Step #2 - "pull-build-image": fbf4eab1fe93: Pull complete
Step #2 - "pull-build-image": Digest: sha256:186e0d1648954edfc3e2e2cc4c05089a82ec408f18ce0795a92779ac060e8ee2
Step #2 - "pull-build-image": Status: Downloaded newer image for gcr.io/agones-images/agones-build:fedaab1c9e
Finished Step #2 - "pull-build-image"
Starting Step #3 - "tests"
Starting Step #4 - "build"
Step #3 - "tests": Already have image: make-docker
Step #4 - "build": Already have image: make-docker
Step #3 - "tests": mkdir -p ~/.kube
Step #3 - "tests": mkdir -p /workspace/build//.config/gcloud
Step #3 - "tests": docker run --rm -v /workspace/build//.config/gcloud:/root/.config/gcloud -v ~/.kube:/root/.kube -v /workspace:/go/src/agones.dev/agones -w /go/src/agones.dev/agones  agones-build:fedaab1c9e bash -c \
Step #3 - "tests": 	"/root/gen-lint-exclude.sh && gometalinter --config .exclude.gometalinter.json --deadline=5m -t --skip vendor ./..."
Step #4 - "build": mkdir -p ~/.kube
Step #4 - "build": mkdir -p /workspace/build//.config/gcloud
Step #4 - "build": docker run --rm -e "CGO_ENABLED=0" -v /workspace/build//.config/gcloud:/root/.config/gcloud -v ~/.kube:/root/.kube -v /workspace:/go/src/agones.dev/agones agones-build:fedaab1c9e go build \
Step #4 - "build": 	-o /go/src/agones.dev/agones/cmd/controller/bin/controller -a -ldflags "-X agones.dev/agones/pkg.Version=0.3.0-d9eca4f" -installsuffix cgo agones.dev/agones/cmd/controller
Step #4 - "build": docker build /workspace/cmd/controller/ --tag=gcr.io/agones-images/agones-controller:0.3.0-d9eca4f 
Step #4 - "build": Sending build context to Docker daemon  40.08MB

Step #4 - "build": Step 1/6 : FROM alpine:3.7
Step #4 - "build": 3.7: Pulling from library/alpine
Step #4 - "build": Digest: sha256:8c03bb07a531c53ad7d0f6e7041b64d81f99c6e493cb39abba56d956b40eacbc
Step #4 - "build": Status: Downloaded newer image for alpine:3.7
Step #4 - "build":  ---> 3fd9065eaf02
Step #4 - "build": Step 2/6 : RUN apk --update add ca-certificates &&     adduser -D agones
Step #4 - "build":  ---> Running in e4c32a9a5f14
Step #4 - "build": fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
Step #4 - "build": fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
Step #4 - "build": (1/1) Installing ca-certificates (20171114-r0)
Step #4 - "build": Executing busybox-1.27.2-r7.trigger
Step #4 - "build": Executing ca-certificates-20171114-r0.trigger
Step #4 - "build": OK: 5 MiB in 12 packages
Step #4 - "build": Removing intermediate container e4c32a9a5f14
Step #4 - "build":  ---> a235b5bcd33b
Step #4 - "build": Step 3/6 : COPY ./bin/controller /home/agones/controller
Step #4 - "build":  ---> 2cdb80377856
Step #4 - "build": Step 4/6 : RUN chown -R agones /home/agones &&     chmod o+x /home/agones/controller
Step #4 - "build":  ---> Running in 8402e0a6807d
Step #4 - "build": Removing intermediate container 8402e0a6807d
Step #4 - "build":  ---> e836b3334e85
Step #4 - "build": Step 5/6 : USER agones
Step #4 - "build":  ---> Running in b114ea495b35
Step #4 - "build": Removing intermediate container b114ea495b35
Step #4 - "build":  ---> 090b5c5d9649
Step #4 - "build": Step 6/6 : ENTRYPOINT ["/home/agones/controller"]
Step #4 - "build":  ---> Running in 4d735f7310b3
Step #4 - "build": Removing intermediate container 4d735f7310b3
Step #4 - "build":  ---> acbf2233bedf
Step #4 - "build": Successfully built acbf2233bedf
Step #4 - "build": Successfully tagged gcr.io/agones-images/agones-controller:0.3.0-d9eca4f
Step #4 - "build": docker run --rm -e "CGO_ENABLED=0" -v /workspace/build//.config/gcloud:/root/.config/gcloud -v ~/.kube:/root/.kube -v /workspace:/go/src/agones.dev/agones agones-build:fedaab1c9e go build \
Step #4 - "build": 	-o /go/src/agones.dev/agones/cmd/sdk-server/bin/sdk-server.linux.amd64 -a -ldflags "-X agones.dev/agones/pkg.Version=0.3.0-d9eca4f" -installsuffix cgo agones.dev/agones/cmd/sdk-server
Step #3 - "tests": WARNING: deadline exceeded by linter megacheck (try increasing --deadline)
Step #3 - "tests": make: *** [lint] Error 2
Step #3 - "tests": Makefile:142: recipe for target 'lint' failed
Finished Step #3 - "tests"
Finished Step #4 - "build"
ERROR
ERROR: build step 3 "make-docker" failed: exit status 2

@markmandel
Copy link
Member

So my only question about this, is - aren't we also doing stuff in other namespaces - i.e. creating service accounts in the default namespace. Is there any issue about potential confusion/conflict there? Otherwise I'm personally not seeing any issue here.

Also, if we are going to do this, we need to also update the Helm install documentation (and maybe have two versions - the 0.2.0 install steps, and then the development install steps, with the standard warning)

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: a00d9d6b-fab0-4e7d-afe5-0169540bb3a9

The following development artifacts have been built, and will exist for the next 30 days:

@cyriltovena
Copy link
Collaborator Author

I'll check if it works when not supplying the --namespace but for sure it's less confusing since right now if you have the agones-system already existing it will fail.

@markmandel
Copy link
Member

SGTM - then the only outstanding thing for me is an update to the docs. Otherwise, SGTM.

@cyriltovena
Copy link
Collaborator Author

I've added a small paragrah about --namespace usage.

There is no problem with deploying Agones to default as what we're creating for gameservers.namespaces is different resources types. I've confirmed it with a full test on GKE.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 4a0421d9-1212-4f31-9468-df8dae0a71b1

The following development artifacts have been built, and will exist for the next 30 days:

@@ -21,11 +21,13 @@ Download the latest `agones-install` zip from the [releases](https://github.com/
$ wget https://github.com/GoogleCloudPlatform/agones/releases/download/v0.2.0/agones-install-0.2.0.zip
$ unzip agones-install-0.2.0.zip
$ cd install/helm/
$ helm install --name my-release agones
$ helm install --name my-release --namespace agones-system agones
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Running this against 0.2.0 results in:

root@markmandel:/go/src/agones.dev/agones# helm install --name test-release --namespace agones-system ./install/helm/agones/
Error: release test-release failed: namespaces "agones-system" already exists

I think we'll need to split this - keep the original version for 0.2.0, and then do a development version with the standard ⚠️ signs stating that it's development only, and we can switch when 0.3.0 comes out.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like this start to be confusing having two type of install. Should we wait then for a release to get that PR in or hotfix 0.2.0 ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I was thinking about something like the following:
https://gist.github.com/markmandel/a4468aa62c6b7793ce36bc398627d402

Two very separate sections -- then when we go to do the 0.3.0 release, we can do our usual documentation cleanup and remove the older install version.

WDYT?

Copy link
Collaborator Author

@cyriltovena cyriltovena Jun 17, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, I've modified your example to make it works with the master branch.

I'm wondering should we have a latest to make it simpler to use the last dev build ? I could then change my doc to use latest.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@markmandel markmandel added kind/documentation Documentation for Agones area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc labels Jun 13, 2018
@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: c903931b-bca0-4f2f-915d-356194574f08

The following development artifacts have been built, and will exist for the next 30 days:

…ow helm standard.

- (Conflict merge) Update Helm App Version
- update doc as requested
@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: b378f7a2-f24a-4b7f-8819-cdfc931dca8f

The following development artifacts have been built, and will exist for the next 30 days:

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: f9af2915-9be7-4c67-8024-01c8e5b99dbe

The following development artifacts have been built, and will exist for the next 30 days:

@markmandel
Copy link
Member

Just a heads up - I need to review this. Just been swamped. I'm on it though!

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 2b25eb72-eb99-4210-9e95-e14bc77067f0

The following development artifacts have been built, and will exist for the next 30 days:

@markmandel markmandel merged commit f4877f6 into googleforgames:master Jun 19, 2018
@markmandel markmandel added this to the 0.3.0 milestone Jun 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/documentation Documentation for Agones
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants